package com.tianyi.dao.entity.orderProducts;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class OrderproductsExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OrderproductsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOrdernumberIsNull() {
            addCriterion("orderNumber is null");
            return (Criteria) this;
        }

        public Criteria andOrdernumberIsNotNull() {
            addCriterion("orderNumber is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernumberEqualTo(Long value) {
            addCriterion("orderNumber =", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberNotEqualTo(Long value) {
            addCriterion("orderNumber <>", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberGreaterThan(Long value) {
            addCriterion("orderNumber >", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberGreaterThanOrEqualTo(Long value) {
            addCriterion("orderNumber >=", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberLessThan(Long value) {
            addCriterion("orderNumber <", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberLessThanOrEqualTo(Long value) {
            addCriterion("orderNumber <=", value, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberIn(List<Long> values) {
            addCriterion("orderNumber in", values, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberNotIn(List<Long> values) {
            addCriterion("orderNumber not in", values, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberBetween(Long value1, Long value2) {
            addCriterion("orderNumber between", value1, value2, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andOrdernumberNotBetween(Long value1, Long value2) {
            addCriterion("orderNumber not between", value1, value2, "ordernumber");
            return (Criteria) this;
        }

        public Criteria andGmtcreateIsNull() {
            addCriterion("gmtCreate is null");
            return (Criteria) this;
        }

        public Criteria andGmtcreateIsNotNull() {
            addCriterion("gmtCreate is not null");
            return (Criteria) this;
        }

        public Criteria andGmtcreateEqualTo(Date value) {
            addCriterion("gmtCreate =", value, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateNotEqualTo(Date value) {
            addCriterion("gmtCreate <>", value, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateGreaterThan(Date value) {
            addCriterion("gmtCreate >", value, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateGreaterThanOrEqualTo(Date value) {
            addCriterion("gmtCreate >=", value, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateLessThan(Date value) {
            addCriterion("gmtCreate <", value, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateLessThanOrEqualTo(Date value) {
            addCriterion("gmtCreate <=", value, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateIn(List<Date> values) {
            addCriterion("gmtCreate in", values, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateNotIn(List<Date> values) {
            addCriterion("gmtCreate not in", values, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateBetween(Date value1, Date value2) {
            addCriterion("gmtCreate between", value1, value2, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtcreateNotBetween(Date value1, Date value2) {
            addCriterion("gmtCreate not between", value1, value2, "gmtcreate");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedIsNull() {
            addCriterion("gmtModified is null");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedIsNotNull() {
            addCriterion("gmtModified is not null");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedEqualTo(Date value) {
            addCriterion("gmtModified =", value, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedNotEqualTo(Date value) {
            addCriterion("gmtModified <>", value, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedGreaterThan(Date value) {
            addCriterion("gmtModified >", value, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedGreaterThanOrEqualTo(Date value) {
            addCriterion("gmtModified >=", value, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedLessThan(Date value) {
            addCriterion("gmtModified <", value, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedLessThanOrEqualTo(Date value) {
            addCriterion("gmtModified <=", value, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedIn(List<Date> values) {
            addCriterion("gmtModified in", values, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedNotIn(List<Date> values) {
            addCriterion("gmtModified not in", values, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedBetween(Date value1, Date value2) {
            addCriterion("gmtModified between", value1, value2, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andGmtmodifiedNotBetween(Date value1, Date value2) {
            addCriterion("gmtModified not between", value1, value2, "gmtmodified");
            return (Criteria) this;
        }

        public Criteria andProductnumberIsNull() {
            addCriterion("productNumber is null");
            return (Criteria) this;
        }

        public Criteria andProductnumberIsNotNull() {
            addCriterion("productNumber is not null");
            return (Criteria) this;
        }

        public Criteria andProductnumberEqualTo(String value) {
            addCriterion("productNumber =", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberNotEqualTo(String value) {
            addCriterion("productNumber <>", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberGreaterThan(String value) {
            addCriterion("productNumber >", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberGreaterThanOrEqualTo(String value) {
            addCriterion("productNumber >=", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberLessThan(String value) {
            addCriterion("productNumber <", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberLessThanOrEqualTo(String value) {
            addCriterion("productNumber <=", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberLike(String value) {
            addCriterion("productNumber like", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberNotLike(String value) {
            addCriterion("productNumber not like", value, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberIn(List<String> values) {
            addCriterion("productNumber in", values, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberNotIn(List<String> values) {
            addCriterion("productNumber not in", values, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberBetween(String value1, String value2) {
            addCriterion("productNumber between", value1, value2, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnumberNotBetween(String value1, String value2) {
            addCriterion("productNumber not between", value1, value2, "productnumber");
            return (Criteria) this;
        }

        public Criteria andProductnameIsNull() {
            addCriterion("productName is null");
            return (Criteria) this;
        }

        public Criteria andProductnameIsNotNull() {
            addCriterion("productName is not null");
            return (Criteria) this;
        }

        public Criteria andProductnameEqualTo(String value) {
            addCriterion("productName =", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameNotEqualTo(String value) {
            addCriterion("productName <>", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameGreaterThan(String value) {
            addCriterion("productName >", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameGreaterThanOrEqualTo(String value) {
            addCriterion("productName >=", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameLessThan(String value) {
            addCriterion("productName <", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameLessThanOrEqualTo(String value) {
            addCriterion("productName <=", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameLike(String value) {
            addCriterion("productName like", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameNotLike(String value) {
            addCriterion("productName not like", value, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameIn(List<String> values) {
            addCriterion("productName in", values, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameNotIn(List<String> values) {
            addCriterion("productName not in", values, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameBetween(String value1, String value2) {
            addCriterion("productName between", value1, value2, "productname");
            return (Criteria) this;
        }

        public Criteria andProductnameNotBetween(String value1, String value2) {
            addCriterion("productName not between", value1, value2, "productname");
            return (Criteria) this;
        }

        public Criteria andBrandidIsNull() {
            addCriterion("brandId is null");
            return (Criteria) this;
        }

        public Criteria andBrandidIsNotNull() {
            addCriterion("brandId is not null");
            return (Criteria) this;
        }

        public Criteria andBrandidEqualTo(String value) {
            addCriterion("brandId =", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidNotEqualTo(String value) {
            addCriterion("brandId <>", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidGreaterThan(String value) {
            addCriterion("brandId >", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidGreaterThanOrEqualTo(String value) {
            addCriterion("brandId >=", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidLessThan(String value) {
            addCriterion("brandId <", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidLessThanOrEqualTo(String value) {
            addCriterion("brandId <=", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidLike(String value) {
            addCriterion("brandId like", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidNotLike(String value) {
            addCriterion("brandId not like", value, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidIn(List<String> values) {
            addCriterion("brandId in", values, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidNotIn(List<String> values) {
            addCriterion("brandId not in", values, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidBetween(String value1, String value2) {
            addCriterion("brandId between", value1, value2, "brandid");
            return (Criteria) this;
        }

        public Criteria andBrandidNotBetween(String value1, String value2) {
            addCriterion("brandId not between", value1, value2, "brandid");
            return (Criteria) this;
        }

        public Criteria andClassifyidIsNull() {
            addCriterion("classifyId is null");
            return (Criteria) this;
        }

        public Criteria andClassifyidIsNotNull() {
            addCriterion("classifyId is not null");
            return (Criteria) this;
        }

        public Criteria andClassifyidEqualTo(String value) {
            addCriterion("classifyId =", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidNotEqualTo(String value) {
            addCriterion("classifyId <>", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidGreaterThan(String value) {
            addCriterion("classifyId >", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidGreaterThanOrEqualTo(String value) {
            addCriterion("classifyId >=", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidLessThan(String value) {
            addCriterion("classifyId <", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidLessThanOrEqualTo(String value) {
            addCriterion("classifyId <=", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidLike(String value) {
            addCriterion("classifyId like", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidNotLike(String value) {
            addCriterion("classifyId not like", value, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidIn(List<String> values) {
            addCriterion("classifyId in", values, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidNotIn(List<String> values) {
            addCriterion("classifyId not in", values, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidBetween(String value1, String value2) {
            addCriterion("classifyId between", value1, value2, "classifyid");
            return (Criteria) this;
        }

        public Criteria andClassifyidNotBetween(String value1, String value2) {
            addCriterion("classifyId not between", value1, value2, "classifyid");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(Double value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(Double value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(Double value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(Double value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(Double value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<Double> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<Double> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(Double value1, Double value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(Double value1, Double value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andColorIsNull() {
            addCriterion("color is null");
            return (Criteria) this;
        }

        public Criteria andColorIsNotNull() {
            addCriterion("color is not null");
            return (Criteria) this;
        }

        public Criteria andColorEqualTo(String value) {
            addCriterion("color =", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotEqualTo(String value) {
            addCriterion("color <>", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorGreaterThan(String value) {
            addCriterion("color >", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorGreaterThanOrEqualTo(String value) {
            addCriterion("color >=", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorLessThan(String value) {
            addCriterion("color <", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorLessThanOrEqualTo(String value) {
            addCriterion("color <=", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorLike(String value) {
            addCriterion("color like", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotLike(String value) {
            addCriterion("color not like", value, "color");
            return (Criteria) this;
        }

        public Criteria andColorIn(List<String> values) {
            addCriterion("color in", values, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotIn(List<String> values) {
            addCriterion("color not in", values, "color");
            return (Criteria) this;
        }

        public Criteria andColorBetween(String value1, String value2) {
            addCriterion("color between", value1, value2, "color");
            return (Criteria) this;
        }

        public Criteria andColorNotBetween(String value1, String value2) {
            addCriterion("color not between", value1, value2, "color");
            return (Criteria) this;
        }

        public Criteria andInventoryIsNull() {
            addCriterion("inventory is null");
            return (Criteria) this;
        }

        public Criteria andInventoryIsNotNull() {
            addCriterion("inventory is not null");
            return (Criteria) this;
        }

        public Criteria andInventoryEqualTo(Long value) {
            addCriterion("inventory =", value, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryNotEqualTo(Long value) {
            addCriterion("inventory <>", value, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryGreaterThan(Long value) {
            addCriterion("inventory >", value, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryGreaterThanOrEqualTo(Long value) {
            addCriterion("inventory >=", value, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryLessThan(Long value) {
            addCriterion("inventory <", value, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryLessThanOrEqualTo(Long value) {
            addCriterion("inventory <=", value, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryIn(List<Long> values) {
            addCriterion("inventory in", values, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryNotIn(List<Long> values) {
            addCriterion("inventory not in", values, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryBetween(Long value1, Long value2) {
            addCriterion("inventory between", value1, value2, "inventory");
            return (Criteria) this;
        }

        public Criteria andInventoryNotBetween(Long value1, Long value2) {
            addCriterion("inventory not between", value1, value2, "inventory");
            return (Criteria) this;
        }

        public Criteria andOperatorIsNull() {
            addCriterion("operator is null");
            return (Criteria) this;
        }

        public Criteria andOperatorIsNotNull() {
            addCriterion("operator is not null");
            return (Criteria) this;
        }

        public Criteria andOperatorEqualTo(String value) {
            addCriterion("operator =", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotEqualTo(String value) {
            addCriterion("operator <>", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorGreaterThan(String value) {
            addCriterion("operator >", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorGreaterThanOrEqualTo(String value) {
            addCriterion("operator >=", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorLessThan(String value) {
            addCriterion("operator <", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorLessThanOrEqualTo(String value) {
            addCriterion("operator <=", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorLike(String value) {
            addCriterion("operator like", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotLike(String value) {
            addCriterion("operator not like", value, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorIn(List<String> values) {
            addCriterion("operator in", values, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotIn(List<String> values) {
            addCriterion("operator not in", values, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorBetween(String value1, String value2) {
            addCriterion("operator between", value1, value2, "operator");
            return (Criteria) this;
        }

        public Criteria andOperatorNotBetween(String value1, String value2) {
            addCriterion("operator not between", value1, value2, "operator");
            return (Criteria) this;
        }

        public Criteria andVersionIsNull() {
            addCriterion("version is null");
            return (Criteria) this;
        }

        public Criteria andVersionIsNotNull() {
            addCriterion("version is not null");
            return (Criteria) this;
        }

        public Criteria andVersionEqualTo(Double value) {
            addCriterion("version =", value, "version");
            return (Criteria) this;
        }

        public Criteria andVersionNotEqualTo(Double value) {
            addCriterion("version <>", value, "version");
            return (Criteria) this;
        }

        public Criteria andVersionGreaterThan(Double value) {
            addCriterion("version >", value, "version");
            return (Criteria) this;
        }

        public Criteria andVersionGreaterThanOrEqualTo(Double value) {
            addCriterion("version >=", value, "version");
            return (Criteria) this;
        }

        public Criteria andVersionLessThan(Double value) {
            addCriterion("version <", value, "version");
            return (Criteria) this;
        }

        public Criteria andVersionLessThanOrEqualTo(Double value) {
            addCriterion("version <=", value, "version");
            return (Criteria) this;
        }

        public Criteria andVersionIn(List<Double> values) {
            addCriterion("version in", values, "version");
            return (Criteria) this;
        }

        public Criteria andVersionNotIn(List<Double> values) {
            addCriterion("version not in", values, "version");
            return (Criteria) this;
        }

        public Criteria andVersionBetween(Double value1, Double value2) {
            addCriterion("version between", value1, value2, "version");
            return (Criteria) this;
        }

        public Criteria andVersionNotBetween(Double value1, Double value2) {
            addCriterion("version not between", value1, value2, "version");
            return (Criteria) this;
        }

        public Criteria andAnnualIsNull() {
            addCriterion("annual is null");
            return (Criteria) this;
        }

        public Criteria andAnnualIsNotNull() {
            addCriterion("annual is not null");
            return (Criteria) this;
        }

        public Criteria andAnnualEqualTo(String value) {
            addCriterion("annual =", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualNotEqualTo(String value) {
            addCriterion("annual <>", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualGreaterThan(String value) {
            addCriterion("annual >", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualGreaterThanOrEqualTo(String value) {
            addCriterion("annual >=", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualLessThan(String value) {
            addCriterion("annual <", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualLessThanOrEqualTo(String value) {
            addCriterion("annual <=", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualLike(String value) {
            addCriterion("annual like", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualNotLike(String value) {
            addCriterion("annual not like", value, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualIn(List<String> values) {
            addCriterion("annual in", values, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualNotIn(List<String> values) {
            addCriterion("annual not in", values, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualBetween(String value1, String value2) {
            addCriterion("annual between", value1, value2, "annual");
            return (Criteria) this;
        }

        public Criteria andAnnualNotBetween(String value1, String value2) {
            addCriterion("annual not between", value1, value2, "annual");
            return (Criteria) this;
        }

        public Criteria andQuarterIsNull() {
            addCriterion("quarter is null");
            return (Criteria) this;
        }

        public Criteria andQuarterIsNotNull() {
            addCriterion("quarter is not null");
            return (Criteria) this;
        }

        public Criteria andQuarterEqualTo(String value) {
            addCriterion("quarter =", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterNotEqualTo(String value) {
            addCriterion("quarter <>", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterGreaterThan(String value) {
            addCriterion("quarter >", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterGreaterThanOrEqualTo(String value) {
            addCriterion("quarter >=", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterLessThan(String value) {
            addCriterion("quarter <", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterLessThanOrEqualTo(String value) {
            addCriterion("quarter <=", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterLike(String value) {
            addCriterion("quarter like", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterNotLike(String value) {
            addCriterion("quarter not like", value, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterIn(List<String> values) {
            addCriterion("quarter in", values, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterNotIn(List<String> values) {
            addCriterion("quarter not in", values, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterBetween(String value1, String value2) {
            addCriterion("quarter between", value1, value2, "quarter");
            return (Criteria) this;
        }

        public Criteria andQuarterNotBetween(String value1, String value2) {
            addCriterion("quarter not between", value1, value2, "quarter");
            return (Criteria) this;
        }

        public Criteria andOpenstartIsNull() {
            addCriterion("openStart is null");
            return (Criteria) this;
        }

        public Criteria andOpenstartIsNotNull() {
            addCriterion("openStart is not null");
            return (Criteria) this;
        }

        public Criteria andOpenstartEqualTo(Date value) {
            addCriterion("openStart =", value, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartNotEqualTo(Date value) {
            addCriterion("openStart <>", value, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartGreaterThan(Date value) {
            addCriterion("openStart >", value, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartGreaterThanOrEqualTo(Date value) {
            addCriterion("openStart >=", value, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartLessThan(Date value) {
            addCriterion("openStart <", value, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartLessThanOrEqualTo(Date value) {
            addCriterion("openStart <=", value, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartIn(List<Date> values) {
            addCriterion("openStart in", values, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartNotIn(List<Date> values) {
            addCriterion("openStart not in", values, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartBetween(Date value1, Date value2) {
            addCriterion("openStart between", value1, value2, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenstartNotBetween(Date value1, Date value2) {
            addCriterion("openStart not between", value1, value2, "openstart");
            return (Criteria) this;
        }

        public Criteria andOpenendIsNull() {
            addCriterion("openEnd is null");
            return (Criteria) this;
        }

        public Criteria andOpenendIsNotNull() {
            addCriterion("openEnd is not null");
            return (Criteria) this;
        }

        public Criteria andOpenendEqualTo(Date value) {
            addCriterion("openEnd =", value, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendNotEqualTo(Date value) {
            addCriterion("openEnd <>", value, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendGreaterThan(Date value) {
            addCriterion("openEnd >", value, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendGreaterThanOrEqualTo(Date value) {
            addCriterion("openEnd >=", value, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendLessThan(Date value) {
            addCriterion("openEnd <", value, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendLessThanOrEqualTo(Date value) {
            addCriterion("openEnd <=", value, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendIn(List<Date> values) {
            addCriterion("openEnd in", values, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendNotIn(List<Date> values) {
            addCriterion("openEnd not in", values, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendBetween(Date value1, Date value2) {
            addCriterion("openEnd between", value1, value2, "openend");
            return (Criteria) this;
        }

        public Criteria andOpenendNotBetween(Date value1, Date value2) {
            addCriterion("openEnd not between", value1, value2, "openend");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andAllcountIsNull() {
            addCriterion("allCount is null");
            return (Criteria) this;
        }

        public Criteria andAllcountIsNotNull() {
            addCriterion("allCount is not null");
            return (Criteria) this;
        }

        public Criteria andAllcountEqualTo(Integer value) {
            addCriterion("allCount =", value, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountNotEqualTo(Integer value) {
            addCriterion("allCount <>", value, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountGreaterThan(Integer value) {
            addCriterion("allCount >", value, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountGreaterThanOrEqualTo(Integer value) {
            addCriterion("allCount >=", value, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountLessThan(Integer value) {
            addCriterion("allCount <", value, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountLessThanOrEqualTo(Integer value) {
            addCriterion("allCount <=", value, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountIn(List<Integer> values) {
            addCriterion("allCount in", values, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountNotIn(List<Integer> values) {
            addCriterion("allCount not in", values, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountBetween(Integer value1, Integer value2) {
            addCriterion("allCount between", value1, value2, "allcount");
            return (Criteria) this;
        }

        public Criteria andAllcountNotBetween(Integer value1, Integer value2) {
            addCriterion("allCount not between", value1, value2, "allcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountIsNull() {
            addCriterion("usedCount is null");
            return (Criteria) this;
        }

        public Criteria andUsedcountIsNotNull() {
            addCriterion("usedCount is not null");
            return (Criteria) this;
        }

        public Criteria andUsedcountEqualTo(Integer value) {
            addCriterion("usedCount =", value, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountNotEqualTo(Integer value) {
            addCriterion("usedCount <>", value, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountGreaterThan(Integer value) {
            addCriterion("usedCount >", value, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountGreaterThanOrEqualTo(Integer value) {
            addCriterion("usedCount >=", value, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountLessThan(Integer value) {
            addCriterion("usedCount <", value, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountLessThanOrEqualTo(Integer value) {
            addCriterion("usedCount <=", value, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountIn(List<Integer> values) {
            addCriterion("usedCount in", values, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountNotIn(List<Integer> values) {
            addCriterion("usedCount not in", values, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountBetween(Integer value1, Integer value2) {
            addCriterion("usedCount between", value1, value2, "usedcount");
            return (Criteria) this;
        }

        public Criteria andUsedcountNotBetween(Integer value1, Integer value2) {
            addCriterion("usedCount not between", value1, value2, "usedcount");
            return (Criteria) this;
        }

        public Criteria andPictureIsNull() {
            addCriterion("picture is null");
            return (Criteria) this;
        }

        public Criteria andPictureIsNotNull() {
            addCriterion("picture is not null");
            return (Criteria) this;
        }

        public Criteria andPictureEqualTo(String value) {
            addCriterion("picture =", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotEqualTo(String value) {
            addCriterion("picture <>", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureGreaterThan(String value) {
            addCriterion("picture >", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureGreaterThanOrEqualTo(String value) {
            addCriterion("picture >=", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLessThan(String value) {
            addCriterion("picture <", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLessThanOrEqualTo(String value) {
            addCriterion("picture <=", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLike(String value) {
            addCriterion("picture like", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotLike(String value) {
            addCriterion("picture not like", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureIn(List<String> values) {
            addCriterion("picture in", values, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotIn(List<String> values) {
            addCriterion("picture not in", values, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureBetween(String value1, String value2) {
            addCriterion("picture between", value1, value2, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotBetween(String value1, String value2) {
            addCriterion("picture not between", value1, value2, "picture");
            return (Criteria) this;
        }

        public Criteria andSizeIsNull() {
            addCriterion("size is null");
            return (Criteria) this;
        }

        public Criteria andSizeIsNotNull() {
            addCriterion("size is not null");
            return (Criteria) this;
        }

        public Criteria andSizeEqualTo(String value) {
            addCriterion("size =", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeNotEqualTo(String value) {
            addCriterion("size <>", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeGreaterThan(String value) {
            addCriterion("size >", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeGreaterThanOrEqualTo(String value) {
            addCriterion("size >=", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeLessThan(String value) {
            addCriterion("size <", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeLessThanOrEqualTo(String value) {
            addCriterion("size <=", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeLike(String value) {
            addCriterion("size like", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeNotLike(String value) {
            addCriterion("size not like", value, "size");
            return (Criteria) this;
        }

        public Criteria andSizeIn(List<String> values) {
            addCriterion("size in", values, "size");
            return (Criteria) this;
        }

        public Criteria andSizeNotIn(List<String> values) {
            addCriterion("size not in", values, "size");
            return (Criteria) this;
        }

        public Criteria andSizeBetween(String value1, String value2) {
            addCriterion("size between", value1, value2, "size");
            return (Criteria) this;
        }

        public Criteria andSizeNotBetween(String value1, String value2) {
            addCriterion("size not between", value1, value2, "size");
            return (Criteria) this;
        }

        public Criteria andSendmethodIsNull() {
            addCriterion("sendMethod is null");
            return (Criteria) this;
        }

        public Criteria andSendmethodIsNotNull() {
            addCriterion("sendMethod is not null");
            return (Criteria) this;
        }

        public Criteria andSendmethodEqualTo(String value) {
            addCriterion("sendMethod =", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodNotEqualTo(String value) {
            addCriterion("sendMethod <>", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodGreaterThan(String value) {
            addCriterion("sendMethod >", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodGreaterThanOrEqualTo(String value) {
            addCriterion("sendMethod >=", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodLessThan(String value) {
            addCriterion("sendMethod <", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodLessThanOrEqualTo(String value) {
            addCriterion("sendMethod <=", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodLike(String value) {
            addCriterion("sendMethod like", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodNotLike(String value) {
            addCriterion("sendMethod not like", value, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodIn(List<String> values) {
            addCriterion("sendMethod in", values, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodNotIn(List<String> values) {
            addCriterion("sendMethod not in", values, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodBetween(String value1, String value2) {
            addCriterion("sendMethod between", value1, value2, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andSendmethodNotBetween(String value1, String value2) {
            addCriterion("sendMethod not between", value1, value2, "sendmethod");
            return (Criteria) this;
        }

        public Criteria andReceivetimeIsNull() {
            addCriterion("receiveTime is null");
            return (Criteria) this;
        }

        public Criteria andReceivetimeIsNotNull() {
            addCriterion("receiveTime is not null");
            return (Criteria) this;
        }

        public Criteria andReceivetimeEqualTo(Date value) {
            addCriterion("receiveTime =", value, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeNotEqualTo(Date value) {
            addCriterion("receiveTime <>", value, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeGreaterThan(Date value) {
            addCriterion("receiveTime >", value, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("receiveTime >=", value, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeLessThan(Date value) {
            addCriterion("receiveTime <", value, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeLessThanOrEqualTo(Date value) {
            addCriterion("receiveTime <=", value, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeIn(List<Date> values) {
            addCriterion("receiveTime in", values, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeNotIn(List<Date> values) {
            addCriterion("receiveTime not in", values, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeBetween(Date value1, Date value2) {
            addCriterion("receiveTime between", value1, value2, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceivetimeNotBetween(Date value1, Date value2) {
            addCriterion("receiveTime not between", value1, value2, "receivetime");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressIsNull() {
            addCriterion("receiveAddress is null");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressIsNotNull() {
            addCriterion("receiveAddress is not null");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressEqualTo(String value) {
            addCriterion("receiveAddress =", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressNotEqualTo(String value) {
            addCriterion("receiveAddress <>", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressGreaterThan(String value) {
            addCriterion("receiveAddress >", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressGreaterThanOrEqualTo(String value) {
            addCriterion("receiveAddress >=", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressLessThan(String value) {
            addCriterion("receiveAddress <", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressLessThanOrEqualTo(String value) {
            addCriterion("receiveAddress <=", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressLike(String value) {
            addCriterion("receiveAddress like", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressNotLike(String value) {
            addCriterion("receiveAddress not like", value, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressIn(List<String> values) {
            addCriterion("receiveAddress in", values, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressNotIn(List<String> values) {
            addCriterion("receiveAddress not in", values, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressBetween(String value1, String value2) {
            addCriterion("receiveAddress between", value1, value2, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andReceiveaddressNotBetween(String value1, String value2) {
            addCriterion("receiveAddress not between", value1, value2, "receiveaddress");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberIsNull() {
            addCriterion("sendMailNumber is null");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberIsNotNull() {
            addCriterion("sendMailNumber is not null");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberEqualTo(String value) {
            addCriterion("sendMailNumber =", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberNotEqualTo(String value) {
            addCriterion("sendMailNumber <>", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberGreaterThan(String value) {
            addCriterion("sendMailNumber >", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberGreaterThanOrEqualTo(String value) {
            addCriterion("sendMailNumber >=", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberLessThan(String value) {
            addCriterion("sendMailNumber <", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberLessThanOrEqualTo(String value) {
            addCriterion("sendMailNumber <=", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberLike(String value) {
            addCriterion("sendMailNumber like", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberNotLike(String value) {
            addCriterion("sendMailNumber not like", value, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberIn(List<String> values) {
            addCriterion("sendMailNumber in", values, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberNotIn(List<String> values) {
            addCriterion("sendMailNumber not in", values, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberBetween(String value1, String value2) {
            addCriterion("sendMailNumber between", value1, value2, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andSendmailnumberNotBetween(String value1, String value2) {
            addCriterion("sendMailNumber not between", value1, value2, "sendmailnumber");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeIsNull() {
            addCriterion("tryClothesTime is null");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeIsNotNull() {
            addCriterion("tryClothesTime is not null");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeEqualTo(Date value) {
            addCriterion("tryClothesTime =", value, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeNotEqualTo(Date value) {
            addCriterion("tryClothesTime <>", value, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeGreaterThan(Date value) {
            addCriterion("tryClothesTime >", value, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeGreaterThanOrEqualTo(Date value) {
            addCriterion("tryClothesTime >=", value, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeLessThan(Date value) {
            addCriterion("tryClothesTime <", value, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeLessThanOrEqualTo(Date value) {
            addCriterion("tryClothesTime <=", value, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeIn(List<Date> values) {
            addCriterion("tryClothesTime in", values, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeNotIn(List<Date> values) {
            addCriterion("tryClothesTime not in", values, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeBetween(Date value1, Date value2) {
            addCriterion("tryClothesTime between", value1, value2, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andTryclothestimeNotBetween(Date value1, Date value2) {
            addCriterion("tryClothesTime not between", value1, value2, "tryclothestime");
            return (Criteria) this;
        }

        public Criteria andReturntimeIsNull() {
            addCriterion("returnTime is null");
            return (Criteria) this;
        }

        public Criteria andReturntimeIsNotNull() {
            addCriterion("returnTime is not null");
            return (Criteria) this;
        }

        public Criteria andReturntimeEqualTo(Date value) {
            addCriterion("returnTime =", value, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeNotEqualTo(Date value) {
            addCriterion("returnTime <>", value, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeGreaterThan(Date value) {
            addCriterion("returnTime >", value, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeGreaterThanOrEqualTo(Date value) {
            addCriterion("returnTime >=", value, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeLessThan(Date value) {
            addCriterion("returnTime <", value, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeLessThanOrEqualTo(Date value) {
            addCriterion("returnTime <=", value, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeIn(List<Date> values) {
            addCriterion("returnTime in", values, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeNotIn(List<Date> values) {
            addCriterion("returnTime not in", values, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeBetween(Date value1, Date value2) {
            addCriterion("returnTime between", value1, value2, "returntime");
            return (Criteria) this;
        }

        public Criteria andReturntimeNotBetween(Date value1, Date value2) {
            addCriterion("returnTime not between", value1, value2, "returntime");
            return (Criteria) this;
        }

        public Criteria andPhototimeIsNull() {
            addCriterion("photoTime is null");
            return (Criteria) this;
        }

        public Criteria andPhototimeIsNotNull() {
            addCriterion("photoTime is not null");
            return (Criteria) this;
        }

        public Criteria andPhototimeEqualTo(Date value) {
            addCriterion("photoTime =", value, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeNotEqualTo(Date value) {
            addCriterion("photoTime <>", value, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeGreaterThan(Date value) {
            addCriterion("photoTime >", value, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeGreaterThanOrEqualTo(Date value) {
            addCriterion("photoTime >=", value, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeLessThan(Date value) {
            addCriterion("photoTime <", value, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeLessThanOrEqualTo(Date value) {
            addCriterion("photoTime <=", value, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeIn(List<Date> values) {
            addCriterion("photoTime in", values, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeNotIn(List<Date> values) {
            addCriterion("photoTime not in", values, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeBetween(Date value1, Date value2) {
            addCriterion("photoTime between", value1, value2, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhototimeNotBetween(Date value1, Date value2) {
            addCriterion("photoTime not between", value1, value2, "phototime");
            return (Criteria) this;
        }

        public Criteria andPhonenumberIsNull() {
            addCriterion("phoneNumber is null");
            return (Criteria) this;
        }

        public Criteria andPhonenumberIsNotNull() {
            addCriterion("phoneNumber is not null");
            return (Criteria) this;
        }

        public Criteria andPhonenumberEqualTo(Long value) {
            addCriterion("phoneNumber =", value, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberNotEqualTo(Long value) {
            addCriterion("phoneNumber <>", value, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberGreaterThan(Long value) {
            addCriterion("phoneNumber >", value, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberGreaterThanOrEqualTo(Long value) {
            addCriterion("phoneNumber >=", value, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberLessThan(Long value) {
            addCriterion("phoneNumber <", value, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberLessThanOrEqualTo(Long value) {
            addCriterion("phoneNumber <=", value, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberIn(List<Long> values) {
            addCriterion("phoneNumber in", values, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberNotIn(List<Long> values) {
            addCriterion("phoneNumber not in", values, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberBetween(Long value1, Long value2) {
            addCriterion("phoneNumber between", value1, value2, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andPhonenumberNotBetween(Long value1, Long value2) {
            addCriterion("phoneNumber not between", value1, value2, "phonenumber");
            return (Criteria) this;
        }

        public Criteria andCompanynameIsNull() {
            addCriterion("companyName is null");
            return (Criteria) this;
        }

        public Criteria andCompanynameIsNotNull() {
            addCriterion("companyName is not null");
            return (Criteria) this;
        }

        public Criteria andCompanynameEqualTo(String value) {
            addCriterion("companyName =", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameNotEqualTo(String value) {
            addCriterion("companyName <>", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameGreaterThan(String value) {
            addCriterion("companyName >", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameGreaterThanOrEqualTo(String value) {
            addCriterion("companyName >=", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameLessThan(String value) {
            addCriterion("companyName <", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameLessThanOrEqualTo(String value) {
            addCriterion("companyName <=", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameLike(String value) {
            addCriterion("companyName like", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameNotLike(String value) {
            addCriterion("companyName not like", value, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameIn(List<String> values) {
            addCriterion("companyName in", values, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameNotIn(List<String> values) {
            addCriterion("companyName not in", values, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameBetween(String value1, String value2) {
            addCriterion("companyName between", value1, value2, "companyname");
            return (Criteria) this;
        }

        public Criteria andCompanynameNotBetween(String value1, String value2) {
            addCriterion("companyName not between", value1, value2, "companyname");
            return (Criteria) this;
        }

        public Criteria andActivityIsNull() {
            addCriterion("activity is null");
            return (Criteria) this;
        }

        public Criteria andActivityIsNotNull() {
            addCriterion("activity is not null");
            return (Criteria) this;
        }

        public Criteria andActivityEqualTo(String value) {
            addCriterion("activity =", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityNotEqualTo(String value) {
            addCriterion("activity <>", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityGreaterThan(String value) {
            addCriterion("activity >", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityGreaterThanOrEqualTo(String value) {
            addCriterion("activity >=", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityLessThan(String value) {
            addCriterion("activity <", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityLessThanOrEqualTo(String value) {
            addCriterion("activity <=", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityLike(String value) {
            addCriterion("activity like", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityNotLike(String value) {
            addCriterion("activity not like", value, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityIn(List<String> values) {
            addCriterion("activity in", values, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityNotIn(List<String> values) {
            addCriterion("activity not in", values, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityBetween(String value1, String value2) {
            addCriterion("activity between", value1, value2, "activity");
            return (Criteria) this;
        }

        public Criteria andActivityNotBetween(String value1, String value2) {
            addCriterion("activity not between", value1, value2, "activity");
            return (Criteria) this;
        }

        public Criteria andPublishtimeIsNull() {
            addCriterion("publishTime is null");
            return (Criteria) this;
        }

        public Criteria andPublishtimeIsNotNull() {
            addCriterion("publishTime is not null");
            return (Criteria) this;
        }

        public Criteria andPublishtimeEqualTo(Date value) {
            addCriterion("publishTime =", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeNotEqualTo(Date value) {
            addCriterion("publishTime <>", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeGreaterThan(Date value) {
            addCriterion("publishTime >", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("publishTime >=", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeLessThan(Date value) {
            addCriterion("publishTime <", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeLessThanOrEqualTo(Date value) {
            addCriterion("publishTime <=", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeIn(List<Date> values) {
            addCriterion("publishTime in", values, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeNotIn(List<Date> values) {
            addCriterion("publishTime not in", values, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeBetween(Date value1, Date value2) {
            addCriterion("publishTime between", value1, value2, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeNotBetween(Date value1, Date value2) {
            addCriterion("publishTime not between", value1, value2, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPhotothemeIsNull() {
            addCriterion("photoTheme is null");
            return (Criteria) this;
        }

        public Criteria andPhotothemeIsNotNull() {
            addCriterion("photoTheme is not null");
            return (Criteria) this;
        }

        public Criteria andPhotothemeEqualTo(String value) {
            addCriterion("photoTheme =", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeNotEqualTo(String value) {
            addCriterion("photoTheme <>", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeGreaterThan(String value) {
            addCriterion("photoTheme >", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeGreaterThanOrEqualTo(String value) {
            addCriterion("photoTheme >=", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeLessThan(String value) {
            addCriterion("photoTheme <", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeLessThanOrEqualTo(String value) {
            addCriterion("photoTheme <=", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeLike(String value) {
            addCriterion("photoTheme like", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeNotLike(String value) {
            addCriterion("photoTheme not like", value, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeIn(List<String> values) {
            addCriterion("photoTheme in", values, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeNotIn(List<String> values) {
            addCriterion("photoTheme not in", values, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeBetween(String value1, String value2) {
            addCriterion("photoTheme between", value1, value2, "phototheme");
            return (Criteria) this;
        }

        public Criteria andPhotothemeNotBetween(String value1, String value2) {
            addCriterion("photoTheme not between", value1, value2, "phototheme");
            return (Criteria) this;
        }

        public Criteria andSendpaymentIsNull() {
            addCriterion("sendPayment is null");
            return (Criteria) this;
        }

        public Criteria andSendpaymentIsNotNull() {
            addCriterion("sendPayment is not null");
            return (Criteria) this;
        }

        public Criteria andSendpaymentEqualTo(Double value) {
            addCriterion("sendPayment =", value, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentNotEqualTo(Double value) {
            addCriterion("sendPayment <>", value, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentGreaterThan(Double value) {
            addCriterion("sendPayment >", value, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentGreaterThanOrEqualTo(Double value) {
            addCriterion("sendPayment >=", value, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentLessThan(Double value) {
            addCriterion("sendPayment <", value, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentLessThanOrEqualTo(Double value) {
            addCriterion("sendPayment <=", value, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentIn(List<Double> values) {
            addCriterion("sendPayment in", values, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentNotIn(List<Double> values) {
            addCriterion("sendPayment not in", values, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentBetween(Double value1, Double value2) {
            addCriterion("sendPayment between", value1, value2, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendpaymentNotBetween(Double value1, Double value2) {
            addCriterion("sendPayment not between", value1, value2, "sendpayment");
            return (Criteria) this;
        }

        public Criteria andSendstatusIsNull() {
            addCriterion("sendStatus is null");
            return (Criteria) this;
        }

        public Criteria andSendstatusIsNotNull() {
            addCriterion("sendStatus is not null");
            return (Criteria) this;
        }

        public Criteria andSendstatusEqualTo(String value) {
            addCriterion("sendStatus =", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotEqualTo(String value) {
            addCriterion("sendStatus <>", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusGreaterThan(String value) {
            addCriterion("sendStatus >", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusGreaterThanOrEqualTo(String value) {
            addCriterion("sendStatus >=", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusLessThan(String value) {
            addCriterion("sendStatus <", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusLessThanOrEqualTo(String value) {
            addCriterion("sendStatus <=", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusLike(String value) {
            addCriterion("sendStatus like", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotLike(String value) {
            addCriterion("sendStatus not like", value, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusIn(List<String> values) {
            addCriterion("sendStatus in", values, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotIn(List<String> values) {
            addCriterion("sendStatus not in", values, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusBetween(String value1, String value2) {
            addCriterion("sendStatus between", value1, value2, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andSendstatusNotBetween(String value1, String value2) {
            addCriterion("sendStatus not between", value1, value2, "sendstatus");
            return (Criteria) this;
        }

        public Criteria andExtinfo1IsNull() {
            addCriterion("extInfo1 is null");
            return (Criteria) this;
        }

        public Criteria andExtinfo1IsNotNull() {
            addCriterion("extInfo1 is not null");
            return (Criteria) this;
        }

        public Criteria andExtinfo1EqualTo(String value) {
            addCriterion("extInfo1 =", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1NotEqualTo(String value) {
            addCriterion("extInfo1 <>", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1GreaterThan(String value) {
            addCriterion("extInfo1 >", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1GreaterThanOrEqualTo(String value) {
            addCriterion("extInfo1 >=", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1LessThan(String value) {
            addCriterion("extInfo1 <", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1LessThanOrEqualTo(String value) {
            addCriterion("extInfo1 <=", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1Like(String value) {
            addCriterion("extInfo1 like", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1NotLike(String value) {
            addCriterion("extInfo1 not like", value, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1In(List<String> values) {
            addCriterion("extInfo1 in", values, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1NotIn(List<String> values) {
            addCriterion("extInfo1 not in", values, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1Between(String value1, String value2) {
            addCriterion("extInfo1 between", value1, value2, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo1NotBetween(String value1, String value2) {
            addCriterion("extInfo1 not between", value1, value2, "extinfo1");
            return (Criteria) this;
        }

        public Criteria andExtinfo2IsNull() {
            addCriterion("extInfo2 is null");
            return (Criteria) this;
        }

        public Criteria andExtinfo2IsNotNull() {
            addCriterion("extInfo2 is not null");
            return (Criteria) this;
        }

        public Criteria andExtinfo2EqualTo(String value) {
            addCriterion("extInfo2 =", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2NotEqualTo(String value) {
            addCriterion("extInfo2 <>", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2GreaterThan(String value) {
            addCriterion("extInfo2 >", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2GreaterThanOrEqualTo(String value) {
            addCriterion("extInfo2 >=", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2LessThan(String value) {
            addCriterion("extInfo2 <", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2LessThanOrEqualTo(String value) {
            addCriterion("extInfo2 <=", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2Like(String value) {
            addCriterion("extInfo2 like", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2NotLike(String value) {
            addCriterion("extInfo2 not like", value, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2In(List<String> values) {
            addCriterion("extInfo2 in", values, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2NotIn(List<String> values) {
            addCriterion("extInfo2 not in", values, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2Between(String value1, String value2) {
            addCriterion("extInfo2 between", value1, value2, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo2NotBetween(String value1, String value2) {
            addCriterion("extInfo2 not between", value1, value2, "extinfo2");
            return (Criteria) this;
        }

        public Criteria andExtinfo3IsNull() {
            addCriterion("extInfo3 is null");
            return (Criteria) this;
        }

        public Criteria andExtinfo3IsNotNull() {
            addCriterion("extInfo3 is not null");
            return (Criteria) this;
        }

        public Criteria andExtinfo3EqualTo(String value) {
            addCriterion("extInfo3 =", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3NotEqualTo(String value) {
            addCriterion("extInfo3 <>", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3GreaterThan(String value) {
            addCriterion("extInfo3 >", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3GreaterThanOrEqualTo(String value) {
            addCriterion("extInfo3 >=", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3LessThan(String value) {
            addCriterion("extInfo3 <", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3LessThanOrEqualTo(String value) {
            addCriterion("extInfo3 <=", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3Like(String value) {
            addCriterion("extInfo3 like", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3NotLike(String value) {
            addCriterion("extInfo3 not like", value, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3In(List<String> values) {
            addCriterion("extInfo3 in", values, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3NotIn(List<String> values) {
            addCriterion("extInfo3 not in", values, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3Between(String value1, String value2) {
            addCriterion("extInfo3 between", value1, value2, "extinfo3");
            return (Criteria) this;
        }

        public Criteria andExtinfo3NotBetween(String value1, String value2) {
            addCriterion("extInfo3 not between", value1, value2, "extinfo3");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}